export interface MouseKey {
  index: number;
  keyValue: number;
  keyName: string;
  type: number;
  code1: number;
  code2: number;
  code3: number;
  lang?: string;
  name?: string;
}

export interface MacroAction {
  id: number | string;
  type: number | string;   // 改为 number 类型
  action: string;
  delay?: number;
  webCode?: string;  // keyCode 是字符串类型
}

export interface MacroList {
  name: string;
  type: number;
  actions: MacroAction[];
}

export interface KeyGroup {
  type: string;
  name: string;
  show?: boolean;
  lang?: string;
  keycodes: Keycode[];
}

export interface Keycode {
  name: string;
  desc?: string;
  lang?: string;
  type: number;
  code1: number;
  code2: number;
  code3: number;
} 